package com.fjnu.entities;

import java.util.Date;

import com.fasterxml.jackson.annotation.JsonIdentityInfo;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.ObjectIdGenerators;
/**
 * 用户填写的报修单
 * @author 默默
 *
 */
@JsonIgnoreProperties(value={"hibernateLazyInitializer","handler","fieldHandler"})
@JsonIdentityInfo(
        generator = ObjectIdGenerators.PropertyGenerator.class,
        property = "id",
        scope = BaseRepair.class)
public class BaseRepair {
	private Integer id;
	private MainInstrument mainInstrument;
	private User reportUser;
	
	/**
	 * 0:待审核
	 * 1:审核通过，待维修
	 * 2:维修成功
	 * 3:维修失败
	 * 4:审核未通过
	 */
	
	public static final Integer NOEXAM=0;
	public static final Integer NOPASS=4;
	public static final Integer NOREPAIR=1;
	public static final Integer SUCCESS=2;
	public static final Integer FAIL=3;
	private Integer status;
	//报修时间
	private Date repairTime;
	//维修时间
	private Date returnTime;
	private String repairReason;
	private String statusQue;
	private ExamRepair examRepair;
	public BaseRepair() {
	}
	public BaseRepair(Integer id, MainInstrument mainInstrument, User reportUser, Integer status, Date repairTime,
			Date returnTime, String repairReason) {
		super();
		this.id = id;
		this.mainInstrument = mainInstrument;
		this.reportUser = reportUser;
		this.status = status;
		this.repairTime = repairTime;
		this.returnTime = returnTime;
		this.repairReason = repairReason;
	
	}
	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public MainInstrument getMainInstrument() {
		return mainInstrument;
	}
	public void setMainInstrument(MainInstrument mainInstrument) {
		this.mainInstrument = mainInstrument;
	}
	public Integer getStatus() {
		return status;
	}
	public void setStatus(Integer status) {
		this.status = status;
	}
	public Date getRepairTime() {
		return repairTime;
	}
	public void setRepairTime(Date repairTime) {
		this.repairTime = repairTime;
	}
	public Date getReturnTime() {
		return returnTime;
	}
	public void setReturnTime(Date returnTime) {
		this.returnTime = returnTime;
	}
	public String getRepairReason() {
		return repairReason;
	}
	public void setRepairReason(String repairReason) {
		this.repairReason = repairReason;
	}
	public ExamRepair getExamRepair() {
		return examRepair;
	}
	public void setExamRepair(ExamRepair examRepair) {
		this.examRepair = examRepair;
	}
	public User getReportUser() {
		return reportUser;
	}
	public void setReportUser(User reportUser) {
		this.reportUser = reportUser;
	}
	public String getStatusQue() {
		return statusQue;
	}
	public void setStatusQue(String statusQue) {
		this.statusQue = statusQue;
	}
	
	

	
}
